package com.huaxin.device.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.huaxin.device.dto.ResponseResult;
import com.huaxin.device.dto.request.AlarmThresholdTemplateCreateReqDTO;
import com.huaxin.device.dto.request.AlarmThresholdTemplatePageListReqDTO;
import com.huaxin.device.dto.request.AlarmThresholdTemplateUpdateReqDTO;
import com.huaxin.device.models.AlarmThresholdTemplate;

public interface AlarmThresholdTemplateService extends IService<AlarmThresholdTemplate> {

    /**
     * 创建报警阈值模板
     */
    ResponseResult<AlarmThresholdTemplate> create(AlarmThresholdTemplateCreateReqDTO in);

    /**
     * 根据模板ID查询模板
     */
    AlarmThresholdTemplate getByTemplateId(String id);

    /**
     * 更新报警阈值模板
     */
    ResponseResult<String> update(AlarmThresholdTemplateUpdateReqDTO in);

    /**
     * 删除模板（系统默认模板不可删除）
     */
    ResponseResult<String> delete(String id);

    /**
     * 分页查询模板
     */
    ResponseResult<IPage<AlarmThresholdTemplate>> pageQuery(AlarmThresholdTemplatePageListReqDTO in);
}